package br.com.controller;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;

import br.com.model.Resposta;
import br.com.model.Pergunta;

import br.com.persistence.PerguntaDao;
import br.com.persistence.RespostaDao;

@ManagedBean(name="cadPergunta", eager = true)
@RequestScoped
public class CadPergunta implements Cadastro{
	private Pergunta pergunta;
	private Resposta resposta1;
	private Resposta resposta2;
	private String message="";
	
	public CadPergunta(){
		pergunta = new Pergunta();
		setResposta1(new Resposta());
		setResposta2(new Resposta());
	
	}
	
	

	public Pergunta getPergunta() {
		return pergunta;
	}

	public void setPergunta(Pergunta pergunta) {
		this.pergunta = pergunta;
	}
	
	@Override
	public void cadastrar(ActionEvent action) {


		if(!pergunta.getPergunta().isEmpty() && !pergunta.getResposta().getResposta().isEmpty()){
			PerguntaDao perDao = new PerguntaDao();
			if(perDao.insert(pergunta))
				message += "Pergunta cadastrada. ";
		}
			
		
		RespostaDao resDao = new RespostaDao();
		if(!resposta1.getResposta().isEmpty()){
			if(resDao.insert(resposta1))
				message += "Resposta 1 cadastrada. ";
		}
		if(!resposta2.getResposta().isEmpty()){
			if(resDao.insert(resposta2))
				message += "Resposta 2 cadastrada. ";
		}
		
			FacesContext faces = FacesContext.getCurrentInstance();
		
		if(!message.isEmpty())
			faces.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,"Mensagem:", message));
		else
			faces.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,"Erro:", "Dados nao foram inseridos"));
		
	}



	public Resposta getResposta1() {
		return resposta1;
	}



	public void setResposta1(Resposta resposta1) {
		this.resposta1 = resposta1;
	}



	public Resposta getResposta2() {
		return resposta2;
	}



	public void setResposta2(Resposta resposta2) {
		this.resposta2 = resposta2;
	}
}
